﻿using System;
using System.Linq;
using System.Collections.Generic;
using System.Text;
using Shared;

namespace Kea
{
    internal abstract class Joinable<TData> : IDisposable
    {
        protected Key _k;
        protected object[] _keys;
        protected bool FirstTimeForThisKey;
        protected bool Writeable = false;
        public void LoadData(object key)
        {
            _keys = _k.GetKey(key);
            FirstTimeForThisKey = true;
        }
        public abstract bool Read();

        public abstract TData GetData();

        public abstract void Dispose();
    }
}
